package com.bifang.module.file.core.biz;

import com.bifang.module.file.common.vo.FileInfoVO;
import com.bifang.module.file.common.vo.FileKeyVO;
import com.bifang.module.file.common.vo.FileMd5VO;
import com.bifang.module.file.common.vo.FileMetadataVO;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface FileManagerIntegration {

    /** 获取文件信息列表 */
    PageInfo<FileInfoVO> getFileInfoList(FileInfoVO fileInfoVO);

    FileInfoVO getFileInfoDetail(FileKeyVO fileKeyVO);

    /** 根据Md5获取基础信息 */
    List<FileInfoVO> getFileInfoByMd5(FileMd5VO fileMd5VO);

    /** 新增基础信息 */
    void addFileInfo(FileInfoVO fileInfoVO);

    /** 修改基础信息 */
    void updateFileInfo(FileInfoVO fileInfoVO);

    /** 删除基础信息 */
    void deleteFileInfo(FileKeyVO fileKeyVO);

    /**获取文件元数据列表*/
    PageInfo<FileMetadataVO> getFileMetadataList(FileMetadataVO fileMetadataVO);
    /**修改元数据信息*/
    FileMetadataVO updateMetaData(FileMetadataVO fileMetadataVO);
    /** 获取服务大厅文件信息列表 */
    PageInfo<FileInfoVO>  getFileHomeInfo(FileInfoVO fileInfoVO);

    /** 获取授权文件信息列表 */
    PageInfo<FileInfoVO> getEmpowerFile(FileInfoVO fileInfoVO);
}
